Введение.
 
Что такое AVISynth?

AVISynth это скриптовый язык и набор фильтров для решения простых задач нелинейного редактирования. AVISynth необычен тем, что он не создаёт выходных файлов. Вместо этого, скрипты AVISynth, имеющие расширение AVS, могут быть напрямую открыты в приложениях читающих AVI файлы. Когда открывается скрипт AVS, AVISynth запускается в фоновом режиме, формирует видео и аудио данные согласно скрипту и "скармливает" их приложению по мере надобности.

 

Вместе с плагином видео-сервера, AVISynth позволяет использовать Premiere или FlasK в качестве фрейм-сервера. Это очень полезно, если вы желаете закодировать ваше отредактированное в Premiere или FlasK видео во внешнем кодировщике (например TMPGEnc, Cinemacraft или VirtualDub). Это достигается путём создания " ложного" AVI файла. Этот созданный "ложный" AVI файл загружается в кодировщик и кодируется как нормальный AVI. Это решает проблему создания требующего много времени промежуточных AVI требующих много места. При запуске плагин видео-сервер для Premiere и FlasK создаёт "ложный" AVI файл c:\part0.avs (с использованием разделения ещё и part1.avs). Если вы загрузите AVS в кодировщик AVISynth выполняет соединение с видео- сервером, затем запросы кодировщика на чтение передаются в плагин Premiere/FlasK. Далее плагин обрабатывает запрос и пересылает аудио/видео в кодировщик. Такая структура называется меж-процессной связью и реализуется через команду AVISynth IPCSource.

 

Скриптом в одну строчку вы можете добавить поддержку сегментированных файлов захвата, AVI файлов размера >2GB, QuickTime файлов MOV, MPEG файлов в приложения которые сами по себе такой поддержки не имеют. Используя Trim, Splice и Dissolve вы можете выбрать и перераспределить сцены необработанного отснятого видео. Применяя ReduceBy2, BilinearResize и BicubicResize вы можете отмасштабировать кадры видео(с качеством сравнимым с Photoshop и лучшим чем в Premiere). Благодаря командам SeparateFields и Weave вы можете редактировать чересстрочное видео с точностью до кадра. Пользуясь Pulldown вы можете избавиться от "3:2 pulldown". Накладывая фильтры SpatialSoften и TemporalSoften вы можете подавить шум в вашем видео добиваясь значительно лучшего качества в выходных форматах типа MPEG.


AVISynth и VirtualDub?

Способность VirtualDub выступать в роли "фрейм-сервера" имеет такую же функциональность, как и AVISynth. Рассмотрим преимущества и недостатки обоих этих программ.

 

Преимущества AVISynth над VirtualDub:

 
  • Архитектура фильтрации в VirtualDub ограничена линейным редактированием. В AVISynth архитектура фильтрации и скриптовый язык могут выполнять произвольные операции нелинейного редактирования. Задачи, требующие специального кода в VirtualDub, такие как "вырезка", восстановление оригинальных кадров фильма из полей (inverse telecine) и объединение множества входных файлов поддерживаются естественным образом стандартными фильтрами AVISynth, и многие задачи которые невозможно решить в VirtualDub легко решаются AVISynth.
  • AVISynth может читать большинство файлов, которые Windows Media Player может воспроизводить, включая MOV/QT, MPEG, MP3, DV type 1 и т.д..
  • Так как AVISynth выполняется внутри адресного пространства вызывающей программы, требуются меньшие накладные расходы по сравнению с VirtualDub в режиме фрейм-сервера. Это значит, что при прочих равных условиях AVISynth лидирует в общем времени выполнения.
  • Фильтры AVISynth обрабатывают изображение в цветовом пространстве YUY2 также хорошо, как и в RGB.
  • Скрипты AVISynth - вещь в себе и всегда доступны для открытия; вам нет нужды запускать фрейм-сервер. Старые скрипты можно использовать снова.
 

Преимущества VirtualDub над AVISynth:

 
  • VirtualDub имеет приятный графический интерфейс. AVISynth не имеет графического интерфейса вообще - вы должны писать файлы скриптов.
  • VirtualDub имеет больший выбор фильтров.
  • VirtualDub лучше оптимизирован, чем AVISynth. Некоторые фильтры VirtualDub (например Resize) выполняются заметно быстрее своих AVISynth эквивалентов.
  • VirtualDub способен выполнять прямое копирование источника (direct stream copy), в котором AVI файлы могут объединяться и усекаться без цикла разжатия/сжатия. AVISynth всегда разжимает видео (впрочем, как и фрейм-сервер VirtualDub).
  • У VirtualDub есть много других полезных возможностей, не относящихся к фрейм-серверу, таких как встроенный захват видео.
 

На самом деле между VirtualDub и AVISynth нет противоборства. AVISynth фактически содержит порядочный объём кода VirtualDub. Благодаря публикации исходного кода VirtualDub его автором, Авери Ли (Avery Lee) Многие программисты использовали их. Обе программы VirtualDub и AVISynth бесплатны, и их можно использовать вместе.


Установка AVISynth

Установка AVISynth проста. Во-первых удостоверьтесь, что в системе не присутствует старая версия AVISynth. (проверить можно поискав avisynth.dll на жёстком диске). Во-вторых, необходимо скачать AVISynth из всемирной сети (если вы уже не скачали). Внутри архива найдите avisynth.dll. Скопируйте этот файл в директорию Windows 9x \System (или \System32 для WinNT/W2k). После этого запускайте файл install.reg также находящийся в архиве. Всплывшее окошко должно сообщить об успешном импорте в реестр. Теперь AVISynth зарегистрирован и в рабочем состоянии. После установки, кодировщики должны быть способны читать AVS файлы.

 

AVISynth протестирован в системах Windows 98, Windows NT и Windows 200. Так что проблем быть не должно.

 

Информация об авторах AVISynth

Разработку AVISynth начал Бэн Рудиак-Гоулд (Ben Rudiak-Gould) Это была весьма приятная утилита, но она содержала несколько ошибок. В связи с этим Эдвин ван Эгглен (Edwin van Eggelen) внёс изменения, разрешающие некоторые из них. Далее была выпущена новая версия программы, но без модуля IPCSource. Этот модуль также внёс Эдвин ван Эгглин. К сожалению затем Бен Рудиак-Гоулд пропал (Октябрь 2000). Так что в настоящее время основную работу по поддержке текущей версии AVISynth и её развитию выполняет Эдвин ван Эгглен.


AVISynth
[AVISynth]
Общая информация
[Общая информация]